home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 11 / Cream of the Crop 11-2.iso / extra_2 / ztimer22.zip / INSTALL.ME < prev    next >
Text File  |  1995-09-26  |  17KB  |  393 lines

  1.  
  2.         SciTech Software Distribution - Standard Directory Structure
  3.         ------------------------------------------------------------
  4.  
  5. This file describes the general directory structure of the SciTech Software
  6. programming libraries that you have installed. This directory structure
  7. is common to all SciTech Software products.
  8.  
  9. Where to get the latest releases
  10. --------------------------------
  11.  
  12. The latest releases of all SciTech Software products are always uploaded to
  13. the Simtel-20 MSDOS internet archives (oak.oakland.edu) and to various
  14. areas on CompuServe and America Online. However to obtain the obsolute
  15. latest release of all SciTech Software products, you can ftp them from
  16. our home site:
  17.  
  18.     ftp.scitechsoft.com (152.160.1.26)
  19.  
  20. If you wish to contact SciTech Software for feedback or bug reports on
  21. our products, you can do so as follows:
  22.  
  23. SciTech Software
  24. 5 Governors Lane, Suite D
  25. Chico, CA 95926 USA
  26.  
  27. Phone:          916-894-8400
  28. Fax:            510-208-8026
  29. Internet:       support@scitechsoft.com
  30.  
  31. Find a nice home for it all
  32. ---------------------------
  33.  
  34. Before you install any of SciTech Software Products, you should decide upon
  35. a standard root directory for installing all of the products into. The
  36. default that we use is under the \SCITECH directory of one of our hard drives
  37. (in my case C:). Then you should install all the files for all the
  38. distributions that you have under the same directory tree. Many of the
  39. products use common libraries to get things done (like the PMODE library)
  40. and common header files. When you install them into the same directory
  41. you will only have one copy of each of these common files.
  42.  
  43. IMPORTANT: Once you decided on a root directory for installing your SciTech
  44.            Software Products, you should install them all into the same
  45.            directory. The command to do this with PKUNZIP would be (assuming
  46.            that all products are installed under C:\SCITECH):
  47.  
  48.                 pkunzip -d <zipfile>.zip C:\SCITECH
  49.  
  50.            This will correctly unzip all the archived files and create the
  51.            correct directory structure under the root directory C:\SCITECH
  52.  
  53.            Note that the '-d' command line option is essential to ensure
  54.            that the correct directory structure is built.
  55.  
  56. Installing for use
  57. ------------------
  58.  
  59. Once you have created the directory structure for the distribution, and
  60. all files have been installed, you will need to perform two final steps
  61. before you can use the libraries:
  62.  
  63.     1. Change your compilers default include path to include the
  64.        d:\SCITECH\INCLUDE directory so your compiler can find the required
  65.        include files, where d: is the drive that you have installed the
  66.        software onto.
  67.  
  68.     2. Change your compilers default library path to include the
  69.        d:\SCITECH\LIB\??? directory (substitute the correct sub-directory
  70.        name for your compiler - d:\SCITECH\LIB\DOS16\BC is for Borland C++
  71.        4.x 16 bit DOS).
  72.  
  73. Once you have done this, you can simply start using the library files as
  74. provided. If you intend to re-compile any of the libraries from the
  75. provided source code, you will need to follow the steps in the next
  76. section.
  77.  
  78. SciTech Software Common Makefile Utilities
  79. ------------------------------------------
  80.  
  81. In order to be able to re-compile any of the SciTech Software Distributions
  82. that come with source code, you will also need to install the SciTech
  83. Software Common Makefile Utilities package. This can be found in the
  84. archive called MKUTIL??.ZIP from the same location that you obtained this
  85. package from. This archive contains all of the relevant executable files
  86. (including a copy of DMAKE 3.8), batch files and DMAKE startup files
  87. required to re-compiled the source code for any of the supported compilers.
  88.  
  89. Once you have installed the files onto your hard drive, you will need to
  90. perform the following steps:
  91.  
  92.     1. Ensure that you have enough environment space to include all the
  93.        environment variables that you need. In practice we find you need
  94.        around 2048 bytes of environment space, but you may get by with
  95.        less. To change this with a normal DOS configuration, add the
  96.        /E:2048 command line switch to the end of your SHELL= command
  97.        line. If you are using the latest 4DOS from JP Software (highly
  98.        recommended) then you can do this in the 4DOS startup files.
  99.  
  100.     2. Change the default executable file path in your AUTOEXEC.BAT file
  101.        to include the d:\SCITECH\BIN directory. This can be placed
  102.        anywhere in your path, so long as the DMAKE.EXE file in the BIN
  103.        directory will be found first (if there is another program with
  104.        the same name).
  105.  
  106.     3. Set the environment variables SCITECH and MGL_ROOT (if you are using
  107.        the MegaGraph Graphics Library). The batch file MGL_ENV.BAT in
  108.        the root \SCITECH directory is a sample of this. The SCITECH
  109.        environment variable is used by the batch files in the BIN
  110.        directory for setting up for compiling with a particular compiler,
  111.        and by the DMAKE program so that it can find all of the relevant
  112.        files during compilation.
  113.  
  114.     4. Set up the enivornment variables needed by the batch files in the
  115.        next step, so that they can located your compilers executable files,
  116.        include files and library files. The file BIN\DOS-VARS.BAT is an
  117.        example that we use for DOS, so you can start with this to build your
  118.        own batch file.
  119.  
  120.     5. Run the relevant batch file to set the environment up for your
  121.        compiler (see list below). These files require the SCITECH
  122.        environment variable to setup correctly, and the relevant variables
  123.        from the previous step to be set up correctly. You should not need
  124.        to edit the batch files themselves, but you *will* need to edit
  125.        the DOS-VARS.BAT file to set things up correctly for these batch
  126.        files.
  127.  
  128.        NOTE FOR Borland C++: When using Borland C++ 3.1/4.x with these
  129.        batch files, you will need to edit the supplied TURBOC.*, TLINK.*,
  130.        BCC32.* and TLINK32.* to contain the proper information for your
  131.        installation. These files are then copied by the batch files into
  132.        the proper Borland C++ installation directories to correctly set
  133.        up the compiler for compiling and linking code for the specified
  134.        target environment.
  135.  
  136. The following compilers are usually supported by SciTech Software, along with
  137. the code used by the batch files from step 4 above (some libraries may not
  138. support a particular compiled depending on lanuage requirements):
  139.  
  140.     16 bit DOS real mode support:
  141.  
  142.     bc3-dos.bat     - Borland C++ 3.1 16 bit
  143.     bc16-dos.bat    - Borland C++ 4.x 16 bit
  144.     vc16-dos.bat    - Microsoft Visual C++ 1.x 16 bit
  145.     sc16-dos.bat    - Symantec C++ 6.x/7.x 16 bit
  146.     wc16-dos.bat    - Watcom C++ 10.x 16 bit
  147.  
  148.     32 bit DOS protected mode support:
  149.  
  150.     bc32-dos.bat    - Borland C++ 4.x 32 bit DPMI32
  151.     bc32-tnt.bat    - Borland C++ 4.x 32 bit PharLap TNT
  152.     wc32-dos.bat    - Watcom C++ 10.x 32 bit DOS4GW/PMODEW
  153.     wc32-tnt.bat    - Watcom C++ 10.x 32 bit PharLap TNT
  154.     wc32-x32.bat    - Watcom C++ 10.x 32 bit FlashTek X32/X32-VM
  155.  
  156.     16 bit Windows support:
  157.  
  158.     bc16-win.bat    - Borland C++ 4.x 16 bit
  159.     vc16-win.bat    - Microsoft Visual C++ 1.x 16 bit
  160.     sc16-win.bat    - Symantec C++ 6.x/7.x 16 bit
  161.     wc16-win.bat    - Watcom C++ 10.x 16 bit
  162.  
  163.     32 bit Windows support:
  164.  
  165.     bc32-win.bat    - Borland C++ 4.x 32 bit
  166.     vc32-win.bat    - Microsoft Visual C++ 1.x/2.x 32 bit
  167.     sc32-win.bat    - Symantec C++ 6.x/7.x 32 bit
  168.     wc32-win.bat    - Watcom C++ 10.x 32 bit
  169.  
  170. Once you have everything set up correctly, you should simply be able to
  171. type DMAKE in any of the source directories and be in business.
  172.  
  173. Assembling 32 bit code
  174. ----------------------
  175.  
  176. All of SciTech Software's assembler code is written in Borland TASM IDEAL
  177. mode, so you will need a copy of Borland TASM in order to re-assemble the
  178. assembler code. If you are assembling for 32 bit protected mode, you _MUST_
  179. use TASM 4.0 or later, since TASM 3.1 and earlier do not generate correct 32
  180. bit code in some instances (pushing flags is one).
  181.  
  182. Compiling with Optimisations or for Debugging
  183. ---------------------------------------------
  184.  
  185. By default when you build the libraries, no optmisations and no debugging
  186. information is generated. You can turn either (or both) of these features
  187. on by setting the OPT or DBG variables for DMAKE. You can do this either
  188. by passing them on the command line, or setting them as environment
  189. variables:
  190.  
  191. dmake OPT=1 DBG=1
  192.  
  193. or
  194.  
  195. set OPT=1
  196. set DBG=1
  197. dmake
  198.  
  199. Note that you can select either speed based or size based compiler
  200. optimisations, using either OPT for normal speed optimisations or
  201. OPT_SIZE for size based optimisations.
  202.  
  203. Changing the default structure packing alignment
  204. ------------------------------------------------
  205.  
  206. All SciTech Software libraries are compiled with the default structure
  207. packing alignment used by the compiler. If you wish to change the default
  208. structure packing alignment used by your compiler, you will need to
  209. recompile _all_ libraries that you use with the new compiler options.
  210. If you dont do this, our library code will be expecting the structures in
  211. a different format to that used by your code, causing some rather subtle
  212. and hard to find bugs!
  213.  
  214. Please note that it has been our experience that changing the default
  215. compiler packing alignment values is not a good idea for some compilers
  216. (because they dont bother to bracket their include files with #pragma pack!).
  217. Unless you know exactly what you are doing, we recommend you use the compiler
  218. defaults to ensure you dont get bitten by subtle alignment bugs.
  219.  
  220. Compiling with direct 80387+ floating point suppport
  221. ----------------------------------------------------
  222.  
  223. Many SciTech Software libraries can be compiled to use direct floating
  224. point support routines for 387+ co-processors in both 16 and 32 bit
  225. protected mode. Compiling with this option will turn on the compilers
  226. inline floating point instruction support, and will also enable any 387
  227. specific assembler modules that may be included. You can turn this on
  228. by setting the FPU variable for DMAKE, by either passing it on the command
  229. line or setting the evironment variable
  230.  
  231. dmake FPU=1
  232.  
  233. or
  234.  
  235. set FPU=1
  236. dmake
  237.  
  238. Programs compiled with this option will require a 387 or higher
  239. co-processor to be installed in the system (the 486DX and Pentium processors
  240. have an co-processor built in, while the 486SX does not). If you are
  241. compiling for real mode, and your system has a floating point emulator
  242. installed (such as Franke.387 or something similar) then the program will
  243. run as per normal. If you are compiling a 32 bit DOS extended application
  244. that is running under a DPMI environment that provides floating point
  245. emulation then your program will also run correctly (the Borland C++ DPMI32
  246. DOS extender provides this, as does the OS/2 2.x DOS box DPMI implementation).
  247.  
  248. Changing the default DOS Extender
  249. ---------------------------------
  250.  
  251. All of the SciTech Software libraries are DOS Extender independant. All
  252. DOS extender dependant information is encapsulated in the PMODE.LIB library.
  253. The default library provided for each of the compilers is compiled for
  254. the default DOS extender normally used by that compiler. All you need to
  255. do in order to use a different DOS extender is re-compile the PMODE
  256. library with the appropriate command line options, and then link with
  257. this new library. Refer to the documentation on the PMODE library for
  258. more details.
  259.  
  260. All SciTech Software distributions that require the PMODE library, come
  261. with a pre-compiled version of the library for the default DOS extender
  262. used by that compiler. If you wish to change the DOS extender, or you
  263. wish to have a look at the source code, you will need to obtain the
  264. PMODE library source archive. You should be able to get this from the
  265. same site that you downloaded this archive from as the file PMPRO??.ZIP.
  266.  
  267. Once you have re-compiled the PMODE library routines, you can change the
  268. DOS extender by either setting an environment variable (the easiest)
  269. or with command line parameters to DMAKE. The batch files provided in
  270. the SCITECH\BIN directory show how to set up for compiling and linking
  271. with any of the supported DOS extenders.
  272.  
  273. Setting up to use FlashTek X-32
  274. -------------------------------
  275.  
  276. Symantec C++ 6.1
  277.  
  278. Setting up to use FlashTek X-32 or X-32VM with Symantec C++ is simple. If
  279. you only want to use the X-32 extender, you can follow the instructions in
  280. the file README.SC that comes on the X-32 distribution disks. However if
  281. you simply run the supplied SC32-X32.BAT batch file, it will place the
  282. appropriate X-32 library and include files before the normal Symantec
  283. ones, and you can selectively compile for either DOSX, X-32 or X-32VM.
  284.  
  285. Watcom C++ 10.x
  286.  
  287. Setting up to use FlashTek X-32 or X-32VM with Watcom C++ is simple. First
  288. you must ensure that you have the latest version (some new versions of X-32
  289. for Watcom 10.0 had interrupt handling problems - if you experience this
  290. obtain the latest version from FlashTek). Then you simply install the
  291. files as specified in the README.WTC that comes on the X-32 distribution
  292. disks. Watcom C++ 10.0 comes out of the box ready to compile with X-32 and
  293. X-32VM, so you can then start using the batch file WC32-X32.BAT and the
  294. WC32.MK DMAKE startup file to compile and link with X-32.
  295.  
  296. Setting up to use PMODE/W
  297. -------------------------
  298.  
  299. PMODE/W is an excellent DOS extender replacement for the normal DOS4GW
  300. DOS extender used by Watcom C++ 10.x. You can re-link all your normal
  301. Watcom C++ code using the new extender, which you can do using the
  302. USE_PMW argument to DMAKE. Hence you can compile and link with PMODE/W
  303. as follows:
  304.  
  305. dmake USE_PMW=1
  306.  
  307. or
  308.  
  309. set USE_PMW=1
  310. dmake
  311.  
  312. All SciTech Software utilities have been tested with PMODE/W and no
  313. compatability problems have been found so far.
  314.  
  315. Setting up to use DJGPP
  316. -----------------------
  317.  
  318. In order to support the DJGPP port of the GNU C++ compiler in a fashion
  319. that is compatible with other dos based tools, we use a number of small
  320. utility programs to convert assembler .OBJ file output to .O format
  321. (EMXAOUT) and also to combine all the commands to produce a single .EXE
  322. file as output (DJ_LD). These utility programs rely on the LIBRARY_PATH
  323. environment variable to be set correctly. Older DJGPP releases of the
  324. compiler also used this variable, but newer releases use the DJGPP.ENV
  325. file. Setting your custom library directories with LIBRARY_PATH is the
  326. method supports by the SciTech makefile definitions and must be used
  327. (DJGPP.ENV imports this variable anyway).
  328.  
  329. Directory tree
  330. --------------
  331.  
  332. The following is a brief outline of the directory tree, and the contents of
  333. all the sub-directories (note that not all of these will be present in
  334. every SciTech Software Distribution archive):
  335.  
  336. SCITECH             ROOT directory (SCITECH is default official name)
  337. ├───BIN             Useful tools and batch files for library building
  338. ├───DOC             Documentation files. Each individual product has its own
  339. │   ├───MGL         separate directory which contains all files specific to
  340. │   ├───...         that product.
  341. │   └───SVGAKIT
  342. ├───FONTS           All MGL font files installed here.
  343. ├───BITMAPS         All MGL bitmap files installed here.
  344. ├───CURSORS         All MGL mouse cursor files installed here.
  345. ├───ICONS           All MGL icon files installed here.
  346. ├───EXAMPLES        Any example source code. Separate sub-directories are
  347. │   ├───MGL         provided for each of the different products.
  348. │   ├───...
  349. │   └───SVGAKIT
  350. ├───MANIFEST        List of all files installed for each Distribution
  351. ├───INCLUDE         All installed header files.
  352. ├───LIB             All installed library files. 
  353. │   ├───DOS16       All 16 bit DOS libraries.
  354. │   │   ├──BC3          Borland C++ 3.1
  355. │   │   ├──BC           Borland C++ 4.x
  356. │   │   ├──SC           Symantec C++ 6.x/7.x
  357. │   │   ├──VC           Visual C++ 1.5x
  358. │   │   └──WC           Watcom C++ 10.x
  359. │   ├───DOS32       All 32 bit DOS libraries
  360. │   │   ├──BC           Borland C++ 4.x
  361. │   │   └──WC           Watcom C++ 10.x
  362. │   ├───WIN16       All 16 bit Windows libraries
  363. │   │   ├──BC           Borland C++ 4.x
  364. │   │   ├──SC           Symantec C++ 6.x/7.x
  365. │   │   ├──VC           Visual C++ 1.5x
  366. │   │   └──WC           Watcom C++ 10.x
  367. │   ├───WIN32       All 32 bit Windows libraries
  368. │   │   ├──BC           Borland C++ 4.x
  369. │   │   ├──SC           Symantec C++ 6.x/7.x
  370. │   │   ├──VC           Visual C++ 1.5x
  371. │   │   └──WC           Watcom C++ 10.x
  372. │   └───OS2         All 32 bit OS/2 libraries
  373. │       ├──BC           Borland C++ 2.x
  374. │       ├──CSET         IBM CSet/2
  375. │       ├──HC           Metaware High C++
  376. │       └──WC           Watcom C++ 10.x
  377. └───SRC             All source code for building the libraries (if provided).
  378.     ├───MGL         Each package has a separate directory that contains all
  379.     ├───...         of the source code and makefiles for building the library
  380.     └───SVGAKIT     and installing it under \SCITECH\LIB.
  381.  
  382.